export type SpCropperOption = {
  /* 裁剪图片的地址 */
  img?: string
  /* 按钮加载 */
  loading?: boolean
  /* 提交前回调 */
  beforeSubmit?: (data: SpCropperFile) => Promise<void>
  /** 预览是否圆形 */
  previewRound?: boolean
  /* 容器宽度 */
  boxWidth?: string | number
  /* 容器高度 */
  boxHeight?: string | number
  /* 裁剪生成图片的质量 */
  outputSize?: number
  /* 裁剪生成图片的格式 */
  outputType?: 'jpeg' | 'png' | 'webp'
  /* 裁剪框的大小信息 */
  info?: boolean
  /* 图片是否允许滚轮缩放 */
  canScale?: boolean
  /* 是否默认生成截图框 */
  autoCrop?: boolean
  /* 默认生成截图框宽度 */
  autoCropWidth?: string
  /* 默认生成截图框高度 */
  autoCropHeight?: string
  /* 是否开启截图框宽高固定比例 */
  fixed?: boolean
  /* 截图框的宽高比例, 开启fixed生效 */
  fixedNumber?: number[]
  /* 是否输出原图比例的截图 */
  full?: boolean
  /* 固定截图框大小 */
  fixedBox?: boolean
  /* 上传图片是否可以移动 */
  canMove?: boolean
  /* 截图框能否拖动 */
  canMoveBox?: boolean
  /* 上传图片按照原始比例渲染 */
  original?: boolean
  /* 截图框是否被限制在图片里面 */
  centerBox?: boolean
  /* 是否按照设备的dpr 输出等比例图片 */
  high?: boolean
  /* true 为展示真实输出图片宽高 false 展示看到的截图框宽高 */
  infoTrue?: boolean
  /* 限制图片最大宽度和高度 */
  maxImgSize?: number
  /* 图片根据截图框输出比例倍数 */
  enlarge?: number
  /* 图片默认渲染方式 */
  mode?: 'contain' | 'cover' | '100px' | '100%' | 'auto'
  /* 裁剪框限制最小区域 */
  limitMinSize?: number | string
  /* 导出时背景颜色填充 */
  fillColor?: string
}

export type SpCropperFile = {
  /** 文件名 */
  fileName: string
  /** 文件 */
  file?: Blob
}
